如何设置ibatis 后台打印完整的sql语句?

在项目开发时都大家都希望将SQL在后台打印出来,以帮助开发以及后续的bug修改。如果用JDBC那么可以方便的打印,可使用ibatis就不知道怎么办了,最近在网上找了一段log4j的配置可以很保姆的处理这个问题。这里贴出来给大家参考一下。

  1. 建立一个log4j.properties文件,放到工程源文件夹下,如果是eclipse那么放到src下,eclipse会自动将这个文件加载到class目录下。如下图

    如果是JB,那么要设置,这类型的文件也加载到目标项目中。

  2. 将log4j.jar和commons-logging.jar(我这次就是落下了这个jar!)放到项目的类路径中,如果是web项目就是lib下。

  3. 配置的log4j.properties文件的例子。证明可用!

1
2
3
4
5
6
7
8
9
10
11
12
log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n


log4j.logger.com.ibatis=debug
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug
log4j.logger.java.sql.Connection=debug
log4j.logger.java.sql.Statement=debug
log4j.logger.java.sql.PreparedStatement=debug,stdout

在项目试运行需要维护得阶段可以把debug改为error,这样服务器后台只打印报错信息,这样既可以看清错误又可以减轻服务器负担(后台不断打印数据很消耗服务器资源的。。)

hoxis wechat
一个脱离了高级趣味的程序员,关注回复1024有惊喜~
赞赏一杯咖啡
0%